{ ... }:
{
    programs.zsh = {
        enable = true;
        enableAutosuggestions = true;
        enableCompletion = true;
        enableVteIntegration = true;
        syntaxHighlighting.enable = true;

        dotDir = ".config/zsh";

        autocd = true;
        defaultKeymap = "viins";

        history = {
            ignoreDups = true;
            ignoreSpace = true;
        };

        historySubstringSearch = {
            enable = true;
            searchDownKey = [ "[B" "" ];
            searchUpKey = [ "[A" "" ];
        };

        initExtra = ''
        export PROMPT='%K{%(!.red.white)}%F{black} %m%(!../%n) %k%f '
        '';

        shellAliases = {
            x = "xplr";
        };
    };
}
